package per.hnvcam.searchext.data.dao;

import per.hnvcam.searchext.data.model.WebReference;
import per.hnvcam.searchext.data.model.Word;
import per.hnvcam.searchext.data.model.WordCount;
import per.hnvcam.searchext.text.WordCounter;

import java.util.List;

public interface WordCountDAO {
   List<WordCount> listWordCounts();
   void saveOrUpdate(WordCount wordCount);
   void save(WordCount wordCount);
   WordCount findByWebReferenceAndWord(WebReference webReference, Word word);
   WordCount findByWebReferenceIdAndWordId(long webReferenceId, long wordId);
   List<WordCount> findByWebReference(WebReference webReference);
   List<WordCount> findByWebReferenceId(long webReferenceId);
   List<WordCount> findByWordId(long wordId);
   List<WordCount> findByWord(Word word);
   void bulkSave(WordCounter wordCounter, WebReference webReference, int wordCountMinimum);
}
